A multimodal application refers to an application that provides a user with multiple modes or devices (e.g., telephony devices, personal digital assistants (PDAs), personal computers, smart phones, etc.) from which to select an option in the form of a voice user interface (VUI), a graphical user interface (GUI), etc. A user may perform different functions depending on the device utilized by the user. For example, a user may use speech commands, a keyboard input, a tactile device (e.g., a pen or a mouse) input, etc. in order to perform such functions.
The success of a multimodal application may depend on how rigorously the application has been tested and quality assured. Typically, multimodal applications are tested by humans (e.g., quality assurance (QA) testers). The testers may follow the guidelines recommended by the World Wide Web Consortium (W3C) when testing multimodal applications. Such testers generally create a matrix of multimodal elements for each multimodal dialog state in order to test a multimodal application, and test the integrity of the multimodal application with the multimodal elements. For example, most of the multimodal dialog states may be manually tested for noinput, nomatch, and help events. These multimodal dialog states may also be manually tested for keyboard, mouse, and/or tactile inputs on a GUI, for example. However, such manual testing and quality assurance is time consuming, tedious, and expensive.